/* 
 * File:   global.h
 * Author: pehladik
 *
 * Created on 12 janvier 2012, 10:11
 */

#ifndef GLOBAL_H
#define	GLOBAL_H


/*! \def WAIT_ARENA_ANSWER
    \brief Valeur d'attente de réponse de la part de l'utilisateur sur la détection de l'arène
*/

#define WAIT_ARENA_ANSWER					(6)

/*! \def MVT_MANUEL
    \brief Etat dans lequel l'utilisateur commande les mouvements via les boutons d'interface
*/
#define MVT_MANUEL					(0)

/*! \def MVT_AUTOMATIC
    \brief Etat dans lequel l'utilisateur commande le robot par une mission
*/
#define MVT_AUTOMATIC					(1)

#define MISSION_STOPPED					(0)

#define MISSION_RUNNING					(1)


#include "includes.h"

/* @descripteurs des tâches */
extern RT_TASK tServeur;
extern RT_TASK tconnect;
extern RT_TASK tmove;

extern RT_TASK tbatterie;
extern RT_TASK twebcam;

/* @descripteurs des mutex */
extern RT_MUTEX mutexEtat;
extern RT_MUTEX mutexMove;
extern RT_MUTEX mutexCamera;
extern RT_MUTEX mutexEtatCamera;
extern RT_MUTEX mutexMission;


/* @descripteurs des semaphore */
extern RT_SEM semConnecterRobot;
extern RT_SEM semEtatRobot;

/* @Variables partagées */
extern int etatCommMoniteur;
extern int etatCommRobot;
extern int etatCamera;
extern int etatMission;

extern DServer *serveur;
extern DRobot *robot;
extern DMovement *move;

extern DCamera *camera; 
extern DImage * img; 
extern DJpegimage * jpegimg;
extern DArena* arena;
extern DPosition* position;
extern DPosition* position_objectif;
extern DMission *mission;


#endif	/* GLOBAL_H */

